package com.zoe.onelink.annotation.web.jackson.sentitive;


import com.zoe.onelink.annotation.data.sensitive.enumeration.SensitiveStrategy;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * <p>标题: 字段脱敏</p>
 * <p>描述: </p>
 * <p>版权: Copyright (c) 2021</p>
 * <p>公司: 智业软件股份有限公司</p>
 *
 * @version: 1.0
 * @author: ruansheng
 * @date: 2021-11-10
 */
@Retention(RetentionPolicy.RUNTIME)
public @interface SensitiveParam {

    /**
     * 脱敏策略
     */
    SensitiveStrategy value();

    /**
     * 额外参数,脱敏类型为CUSTOM的时候用来自定义脱敏范围,如 {"2","3"} 可以将 "testMsg" 解析为 "te**Msg" . 2表示保留前两位为,3表示保留后3位
     */
    String[] args() default {};
}
